package com.zkyc.framework.common.pojo;

import java.util.Date;
import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * (File)实体类
 *
 * @author libingchuan
 * @since 2022-05-27 14:20:11
 */
@TableName("system_file")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class File implements Serializable {
    private static final long serialVersionUID = -87724251192390036L;
    /**
     * 文件id
     */
    //@TableId(type = IdType.INPUT)
    @TableId(type=IdType.AUTO)
    private Long id;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private Date createTime;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private Date updateTime;
    /**
     * 文件上传后名称
     */
    private String fileNameInServer;
    /**
     * 文件原名称
     */
    private String fileName;
    /**
     * minio的bucket
     */
    private String bucket;
    /**
     * 文件路径
     */
    private String url;

    private String coverUrl;

    private String watermarkUrl;
    /**
     * 逻辑删除标志(0、未删除 1、已删除 )
     */
    @TableLogic //逻辑删除注解
    private Integer isDeleted;

    private String belongKey;

    private String websiteId;

    private String type;

    private String description;

    private Integer downloadCount;

    private String author;

    private String uploader;
    /**
     * 拍摄时间
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8")
    private Date shotTime;


}

